package com.xquant.pricing.pricingConfig.service;


import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author ershuai.zhao
 * *
 * @Date: 24/12/2019 11:42
 * *
 * @Description:
 */
public interface PricingConfigAuthorServiceWrapper {
    public static String BEAN_NAME = "pricingConfigAuthorServiceWrapper";

    public void savePricingConfig(Map params);

    public void updatePricingConfig(Map params);

    public void deletePricingConfig(Map<String, Object> params);

    public void deletePricingConfigSyncAuthor(Map<String, Object> params);

    public void savePricingConfigSyncAuthor(Map<String, Object> params);

    public PageInfo<Map> queryPricingUserAuthorByPage(Map params);

    public PageInfo<Map> queryPricingConfigAuthorByPage(Map params);

    public List<Map> queryPricingConfigAuthor(Map params);

    public void savePricingConfigUserAuthor(Map params);

    public void updatePricingConfigUserAuthor(Map params);

    public void deletePricingConfigUserAuthor(Map params);

    public void deleteUserPriceCfg(Map params);

    public PageInfo<Map> queryPricingConfigUserAuthor(Map params);

    PageInfo<Map> queryGroupPricingConfigAuthorByPage(Map<String, Object> param);

    public List<Map> queryPricingConfigUserDefaultAuthor(Map params);

    public void executePricingConfigSyncAuthor(Map<String, Object> params);

    public void updateUserDefaultPricingParam(Map<String, Object> params);


    public void updateGroupPerm(Map<String, Object> param);

    List getGroupUserAndDeptPerm(Map<String, Object> param);

    public void insertUserCfgRight(@Param("list") List<Map<String,Object>> map);

    public void insertDeptCfgRight(Map map);

    public void removeUserPermCfg(Map param);
    public void removeDeptPermCfg(Map param);

    void updateCfgUserPerm(Map<String, Object> params);

    void doSavePricingConfig(Map<String, Object> param);

    void doUpdatePricingConfigUserAuthor(Map<String, Object> params);

    boolean checkCfgName(Map map);
}
